/*
 * ByteArray.h
 *
 *  Created on: Jul 20, 2013
 *      Author: m
 */

#ifndef BYTEARRAY_H_
#define BYTEARRAY_H_

#include <memory.h>
#include "Exception.h"

#define BYTEARRAY_MAX 1024

namespace communication
{

class ByteArray
{
    size_t m_size;
    char m_data[BYTEARRAY_MAX];

public:
    ByteArray();

    ~ByteArray();

    void set( size_t size, const char* data )
    {
        if ( size > BYTEARRAY_MAX )
            throw Exception("Dato demasiado largo para el byte array");

        memcpy( m_data , data, size );
    }

    char* getData()
    {
        return m_data;
    }

    size_t getSize()
    {
        return m_size;
    }
};

} /* namespace communication */
#endif /* BYTEARRAY_H_ */
